ইলাস্টিকসার্চ (ElasticSearch)

Master Node, Data Node এবং Ingest Node

Latest Technologies - ইলাস্টিকসার্চ (ElasticSearch) - Elasticsearch এর আর্কিটেকচার | NCTB BOOK

Elasticsearch-এর Master Node, Data Node এবং Ingest Node

Elasticsearch-এর ক্লাস্টারে বিভিন্ন ধরনের নোড থাকে, প্রতিটি নোডের আলাদা ভূমিকা এবং কাজ থাকে। প্রধান নোডগুলো হলো Master Node, Data Node, এবং Ingest Node। এই নোডগুলো একসঙ্গে Elasticsearch-এর ডিস্ট্রিবিউটেড আর্কিটেকচার এবং পারফরম্যান্স নিশ্চিত করে। নিচে প্রতিটি নোডের বিস্তারিত ব্যাখ্যা প্রদান করা হলো:

১. Master Node (মাস্টার নোড)

  • Master Node হলো ক্লাস্টারের স্টেট এবং কনফিগারেশন পরিচালনা করে। এটি মূলত ক্লাস্টারের একটি ম্যানেজার হিসেবে কাজ করে এবং শার্ড বরাদ্দ, নোড মনিটরিং, এবং ক্লাস্টারের স্বাস্থ্য সঠিকভাবে নিশ্চিত করে।
  • Master Node-এর প্রধান কার্যাবলী:
    • শার্ড বরাদ্দ: নতুন ডেটা সংরক্ষণ করার সময় Master Node সিদ্ধান্ত নেয় যে কোন শার্ড কোন নোডে বরাদ্দ করা হবে।
    • নোড মনিটরিং: ক্লাস্টারের প্রতিটি নোডের স্বাস্থ্য এবং স্টেট পর্যবেক্ষণ করে। যদি কোনো নোড ব্যর্থ হয়, Master Node ক্লাস্টারকে পুনর্গঠিত করে এবং শার্ডগুলো পুনর্বন্টন করে।
    • কনফিগারেশন এবং স্টেট ম্যানেজমেন্ট: ক্লাস্টারের কনফিগারেশন পরিবর্তন এবং ক্লাস্টারের আপডেটগুলি পরিচালনা করে।
  • Master Election Process:
    • Elasticsearch ক্লাস্টারে একাধিক নোড Master Node হিসেবে কাজ করতে পারে, তবে এক সময়ে একটি নোডই Master হিসেবে কাজ করে। যদি Master Node ব্যর্থ হয়, তাহলে অন্য নোডগুলোর মধ্যে একটি নতুন Master নির্বাচন করা হয়।
  • Master Node সাধারণত বড় লোড যেমন সার্চ এবং ডেটা স্টোরেজ অপারেশন পরিচালনা করে না, কারণ এটি মূলত ক্লাস্টারের ম্যানেজমেন্টে মনোনিবেশ করে।

২. Data Node (ডেটা নোড)

  • Data Node হলো ক্লাস্টারের সেই নোড, যা মূলত ডেটা সংরক্ষণ এবং সার্চ ও অ্যানালাইসিস কার্য পরিচালনা করে। এটি Elasticsearch-এর ডেটাবেসের মূল অংশ হিসেবে কাজ করে এবং ডকুমেন্ট, ইন্ডেক্স, এবং শার্ডগুলো সংরক্ষণ করে।
  • Data Node-এর প্রধান কার্যাবলী:
    • ডেটা স্টোরেজ: ডকুমেন্ট এবং শার্ডগুলো সংরক্ষণ করে। প্রতিটি ইন্ডেক্সের প্রাইমারি এবং রেপ্লিকা শার্ডগুলো Data Node-এ বরাদ্দ করা হয়।
    • সার্চ অপারেশন: সার্চ রিকোয়েস্ট পাওয়ার পর Data Node সেই রিকোয়েস্টে থাকা টার্ম এবং শর্ত অনুযায়ী ডকুমেন্ট খুঁজে বের করে এবং রেসপন্স প্রদান করে।
    • ডেটা রিকভারি: যদি কোনো নোড ব্যর্থ হয়, তবে Data Node রেপ্লিকা শার্ড ব্যবহার করে ডেটা রিকভার করতে সহায়ক হয়।
  • Data Node ক্লাস্টারের প্রধান কাজগুলো পরিচালনা করে, তাই এগুলো সাধারণত উচ্চ পারফরম্যান্সের সার্ভারে চালানো হয় এবং ক্লাস্টারের লোড সামলাতে সক্ষম হয়।
  • Elasticsearch-এর ক্লাস্টারে এক বা একাধিক Data Node থাকতে পারে, এবং এর সংখ্যা বাড়িয়ে ডেটার স্কেলেবিলিটি বাড়ানো যায়।

৩. Ingest Node (ইনজেস্ট নোড)

  • Ingest Node হলো সেই নোড, যা ডেটা ইন্ডেক্স করার আগে তা প্রসেস এবং ট্রান্সফর্ম করে। এটি ডেটা ইন্ডেক্সিং-এর আগে ডেটাকে প্রি-প্রসেস করার জন্য ব্যবহার করা হয়।
  • Ingest Node-এর প্রধান কার্যাবলী:
    • ইনজেস্ট পাইপলাইন: Ingest Node ইনজেস্ট পাইপলাইন ব্যবহার করে ডেটাকে প্রসেস করে। পাইপলাইনে বিভিন্ন প্রোসেসর থাকে, যেমন Rename, Set, GeoIP, Enrich, ইত্যাদি, যা ডেটাকে প্রয়োজন অনুযায়ী ফিল্টার, এনরিচ বা পরিবর্তন করতে পারে।
    • ডেটা এনরিচমেন্ট: Ingest Node ডেটা এনরিচমেন্ট করার জন্য বহিরাগত তথ্য বা API ব্যবহার করতে পারে, যেমন IP অ্যাড্রেস থেকে জিওলোকেশন তথ্য সংগ্রহ করা।
    • ডেটা স্ট্রাকচারিং: ইনজেস্ট নোড ডেটাকে সঠিকভাবে ফিল্ড এবং ফরম্যাটে সাজিয়ে রাখে, যাতে এটি ইন্ডেক্সিং-এর জন্য প্রস্তুত হয়।
  • Ingest Node ক্লাস্টারের সার্চ বা ম্যানেজমেন্ট কাজ পরিচালনা করে না, বরং এটি শুধুমাত্র ডেটা প্রসেসিং এবং ইনজেস্টিং-এ ফোকাস করে।
  • Ingest Node ব্যবহার করে ক্লাস্টারের সার্চ এবং ইন্ডেক্সিং লোড কমানো যায়, কারণ এটি ডেটাকে প্রি-প্রসেস করে Data Node-এ পাঠায়।

Elasticsearch ক্লাস্টারে নোডগুলোর সমন্বিত কাজ

  • Master Node ক্লাস্টারের স্টেট এবং শার্ড বরাদ্দ করে ক্লাস্টারের সঠিক কার্যক্রম নিশ্চিত করে। এটি ম্যানেজমেন্ট কাজ পরিচালনা করে, তবে সার্চ বা ডেটা সংরক্ষণের কাজে জড়িত থাকে না।
  • Data Node মূলত ডেটা সংরক্ষণ, ইন্ডেক্সিং, এবং সার্চ অপারেশন পরিচালনা করে। এটি ক্লাস্টারের ডেটা ম্যানেজমেন্ট এবং অ্যাক্সেসের জন্য দায়ী।
  • Ingest Node ডেটা প্রসেস এবং ফিল্টার করে তা ইন্ডেক্সিং-এর জন্য প্রস্তুত করে, যাতে ডেটা সঠিকভাবে স্টোরেজে যুক্ত হয় এবং সার্চ অপারেশন দ্রুত হয়।

উপসংহার

Elasticsearch-এর Master Node, Data Node, এবং Ingest Node একসঙ্গে কাজ করে একটি কার্যকর এবং স্কেলেবল সার্চ ইঞ্জিন তৈরি করে। Master Node ক্লাস্টারের স্টেট এবং ম্যানেজমেন্ট পরিচালনা করে, Data Node ডেটা সংরক্ষণ এবং সার্চ কার্য সম্পন্ন করে, এবং Ingest Node ডেটা ইন্ডেক্সিং-এর আগে প্রসেস করে। প্রতিটি নোডের নিজস্ব ভূমিকা এবং কার্যপ্রণালী নিশ্চিত করে যে ক্লাস্টার ফল্ট-টলারেন্ট, স্কেলেবল, এবং উচ্চ পারফরম্যান্স প্রদান করতে সক্ষম।

Content added By
Promotion